package ar.com.fiuba.RulesMgr.validationModes;

import java.util.List;

import ar.com.fiuba.RulesMgr.rules.CompositeRule;

/**
 * Representation of a validation mode of a rule. This defines the order or the
 * relevancy between evaluations.
 * 
 */
public interface ValidationMode {

	/**
	 * Method to validate a rule with a list of objects.
	 * 
	 * @param rule
	 *            the rule to be validated.
	 * @param objects
	 *            the objects where the validation will be applied.
	 * @return true if the rule applies, otherwise false.
	 */
	public Boolean validate(CompositeRule rule, List<Object> objects);

}
